home *** CD-ROM | disk | FTP | other *** search
- /*
- File: BigEasyDialogs.h
-
- Contains: xxx put contents here xxx
-
- Written by: xxx put writers here xxx
-
- Copyright: © 1992 by Apple Computer, Inc., all rights reserved.
-
- Change History (most recent first):
-
- <2+> 5/5/93 dvb Fields & controls.
- <2> 4/3/92 dvb New calls for getting text & numbers.
- <1> 1/20/92 dvb first checked in
-
- */
-
- /* file: BigEasyDialogs.h
- *
- * Started 2 January 1992, more or less.
- *
- */
-
-
-
- /*--------------------------
- Inclusions
- --------------------------*/
-
- #include <Types.h>
-
- /*--------------------------
- Types
- --------------------------*/
-
- typedef void (*beDialogUpdate)(long refcon,const Rect *updateRect);
- typedef void (*beDialogKey)(long refcon,short key,short mods);
- typedef void (*beDialogClick)(long refcon,Point p,short mods);
- typedef void (*beDialogIdle)(long refcon);
-
-
- typedef struct
- {
- short count;
- short defaultButton; /* highlighted, and <return> hits it */
- short cancelButton; /* cmd-. or 'escape' hits it */
- struct
- {
- Str31 name;
- char key; /* cmd-key for the button, or 0 for none */
- } button[5];
- } EasyDialogButtonList;
-
- #define kEasyDialogOkay ((EasyDialogButtonList *)-1)
- #define kEasyDialogOkayCancel ((EasyDialogButtonList *)-2)
- #define kEasyDialogCancelOkay ((EasyDialogButtonList *)-3)
- #define kEasyDialogSaveDiscardCancel ((EasyDialogButtonList *)-4)
-
- typedef enum
- {
- easyButton, /* long */
- easyCheckbox, /* long */
- easyRadioGroup, /* long */
- easyTextNumber, /* 256 bytes */
- easyTextString /* long */
- };
-
- typedef void (*EasyFieldDialogProc)(short itemNumber,struct EasyField *field);
-
-
- typedef struct
- {
- char itemNumber;
- char itemCount; /* How many of that type. */
- char itemType; /* Regular buttons terminate dialog */
- char general; /* fractional bits for number */
- } EasyField;
-
- typedef struct
- {
- short defaultButton; /* one for enter key, and roundrected */
- short cancelButton; /* one for esc and cmd-., and makes no change in output */
- EasyField field[100];
- } EasyFieldList;
-
-
- /*--------------------------
- Routines
- --------------------------*/
-
- long EasyDialog(Rect *windowRect,
- beDialogUpdate updateProc,
- beDialogKey keyProc,
- beDialogClick clickProc,
- beDialogIdle idleProc,
- EasyDialogButtonList *buttonList,
- long refcon);
-
- short EasyDialogMessage(short iconID,
- StringPtr header,StringPtr body,
- EasyDialogButtonList *buttonList);
-
- Boolean EasyDialogGetString(const StringPtr dialogTitle,
- const StringPtr dialogPrompt,
- StringPtr inOutString,short maxInOutStringLength);
-
- Boolean EasyDialogGetNumber(const StringPtr dialogTitle,
- const StringPtr dialogPrompt,
- long *inOutNumber);
-
- Boolean EasyFieldDialog(short dialogID,EasyFieldList *fieldList,void *data,
- StringPtr dialogTitle);
-
-